/**
 * js多行注释
 */
/**
 * var声明变量特点：
 * 1.会进行变量提升
 *      console.log(a);//undefiend
 *      var a = 10;
 *      解析顺序：
 *          var a;
 *          console.log(a);//undefiend
 *          a = 10;
 * 2.可以重复声明变量
 *      var a = 10;
 *      var a = 20;
 *      var a = true;
 * 3.使用var声明变量不存在块级作用域
 *      if(true){
 *          var a = 10;
 *      } 
 *      console.log(a);//10 在外部是可以访问
 *      for(){}
 */
/**
 * let声明变量特点
 *  1.不会进行变量提升
 *      console.log(a);//报错
        let a = 10;
    2.不可以重复声明变量
        let a = 10;
        let a = 20;
    3.存在块级作用域
        if(true){
 *          let a = 10;
 *  } 
 *  console.log(a);
 */
/**
 * const声明变量特点:
 * 1.不会进行变量提升
 *      console.log(a);
 *      const a = 10;
 * 2.不可以重复声明变量
 *      const a = 10;
 *      const a = 20;
 * 3.存在块级作用域
 *      if(true){
 *              const a = 10;
 *      } 
 *      console.log(a，'------');//error a is not defined
 * 4.使用const声明变量必须进行初始化
 *      const a;//错误的 必须赋值
 *      const a=10;//正确的
 * 5.const声明变量赋值后不可修改 所以一般用于声明常量
 *      const a =10;
 *      a=20;//不可以修改
 *      console.log(a);//错误的
 * 
 */
